public abstract class Component {
    private String componentName;

    public Component(String componentName){
        this.componentName = componentName;
    }

    public abstract boolean addChild(Component child);
    public abstract boolean removeChild(Component child);
    public abstract Component getChild(int childIndex);

    public abstract void operation();

    public String getComponentName() {
        return componentName;
    }

    public void setComponentName(String componentName) {
        this.componentName = componentName;
    }
}
